package com.kaili.pojo.dto.abnormal;

import com.alibaba.fastjson.annotation.JSONField;
import com.alibaba.fastjson.serializer.ToStringSerializer;
import com.kaili.common.util.CommonRegexUtil;
import io.swagger.annotations.ApiModelProperty;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;

/**
 * @version 1.0
 * @ClassName: 异常件新增实体类
 * @Description:
 * @author: xinglei
 * @Time: 18-11-27 上午9:02
 * @Copyright: © 2018 杭州凯立通信有限公司 版权所有
 * @Warning: 本内容仅限于公司内部传阅, 禁止外泄或用于其它商业目的
 */
public class EwbAbnormalAddDTO {

    @Pattern(regexp = CommonRegexUtil.REGEX_EWB_NO_NULL, message = "运单号应为[A-Za-z0-9]组成的1-30位字符")
    @ApiModelProperty("托运单号")
    private String ewbNo;
    @ApiModelProperty("货差数量")
    private Integer diffPiece;
    @ApiModelProperty("货损数量")
    private Integer damagePiece;
    @ApiModelProperty("异常上报网点")
    private Integer siteId;
    @ApiModelProperty("处理意见")
    private String handleSuggestion;
    @NotNull(message = "处理状态 不能为空")
    @ApiModelProperty("处理状态 0未处理,1已处理")
    private Integer handleStatus;
    @NotNull(message = "数据来源不能为空")
    @ApiModelProperty("来源,1标示web端,2标示PDA端")
    private Integer sourceType;

    @ApiModelProperty("操作编号")
    @JSONField(serializeUsing = ToStringSerializer.class)
    private String operationId;

    public String getOperationId() {
        return operationId;
    }

    public void setOperationId(String operationId) {
        this.operationId = operationId;
    }

    public Integer getSourceType() {
        return sourceType;
    }

    public void setSourceType(Integer sourceType) {
        this.sourceType = sourceType;
    }


    public String getEwbNo() {
        return ewbNo;
    }

    public void setEwbNo(String ewbNo) {
        this.ewbNo = ewbNo;
    }

    public Integer getDiffPiece() {
        return diffPiece;
    }

    public void setDiffPiece(Integer diffPiece) {
        this.diffPiece = diffPiece;
    }

    public Integer getDamagePiece() {
        return damagePiece;
    }

    public void setDamagePiece(Integer damagePiece) {
        this.damagePiece = damagePiece;
    }

    public Integer getSiteId() {
        return siteId;
    }

    public void setSiteId(Integer siteId) {
        this.siteId = siteId;
    }

    public String getHandleSuggestion() {
        return handleSuggestion;
    }

    public void setHandleSuggestion(String handleSuggestion) {
        this.handleSuggestion = handleSuggestion;
    }

    public Integer getHandleStatus() {
        return handleStatus;
    }

    public void setHandleStatus(Integer handleStatus) {
        this.handleStatus = handleStatus;
    }
}
